package com.iplant.aps.service.apsenum.aps;

/**
 * 首检状态
 *
 * @author YouWang·Peng
 * 2024-3-25 14:14:41
 */
public enum APSFirstCheckStatus {
    /**
     * 不首检
     */
    Default(0, "不首检"),
    /**
     * 待首检
     */
    ToCheck(1, "待首检"),
    /**
     * 卡控中
     */
    Locked(2, "卡控中"),
    /**
     * 首检合格
     */
    CheckGood(3, "首检合格"),
    /**
     * 首检不合格
     */
    CheckBad(4, "首检不合格");

    private int value;
    private String label;

    APSFirstCheckStatus(int value, String label) {
        this.value = value;
        this.label = label;
    }

    /**
     * 通过 value 的数值获取枚举实例
     */
    public static APSFirstCheckStatus getEnumType(int val) {
        for (APSFirstCheckStatus type : APSFirstCheckStatus.values()) {
            if (type.getValue() == val) {
                return type;
            }
        }
        return Default;
    }

    /**
     * 通过 value 的数值获取枚举实例
     */
    public static APSFirstCheckStatus getEnumType(String val) {
        for (APSFirstCheckStatus type : APSFirstCheckStatus.values()) {
            if (type.getLabel().equals(val)) {
                return type;
            }
        }
        return Default;
    }

    public int getValue() {
        return value;
    }

    public String getLabel() {
        return label;
    }
}
